home *** CD-ROM | disk | FTP | other *** search
/ PC Gamer (Italian) 30 / PC Gamer IT CD 30 1-2.iso / MOTS / GAMEDATA / RESOURCE / JKMRES.GOO / cog_00_elev_switch2.cog < prev    next >
Text File  |  1998-02-25  |  2KB  |  71 lines

  1. # Jedi Knight Cog Script
  2. #
  3. # 00_elev_switch2.cog
  4. #
  5. # This elevator will go up to its next frame and hold there.  The elevator can be recalled to a floor by hitting the
  6. # respective "Call" button.
  7. #
  8. # (C) 1997 LucasArts Entertainment Co. All Rights Reserved
  9. # ========================================================================================
  10.  
  11. symbols
  12.  
  13. message    crossed
  14. message    activate
  15. message    arrived
  16.  
  17. surface    lower_adjoin0    linkid=1
  18. surface    lower_adjoin1    linkid=1
  19. surface    lower_adjoin2    linkid=1
  20. surface    call0                linkid=1
  21. surface    call1                linkid=1
  22. surface     call2                linkid=1
  23. surface    call3                linkid=1
  24.  
  25. thing        elevator            desc=elevator_object
  26.  
  27. int        curframe=0        Local
  28. flex        start_wait=0.25        desc=pause_before_moving_up
  29. flex        speed=4.0
  30. sound        wav0=lvrclik1.wav
  31.     
  32. end
  33.  
  34. # ========================================================================================
  35.  
  36. code
  37. activate:                        // If player presses button
  38.     if (GetWallCel(call0) == 1) return;
  39.     if (GetSenderId() != 1) return;
  40.     setwallcel(call0,1);
  41.     setwallcel(call1,1);
  42.     setwallcel(call2,1);
  43.     setwallcel(call3,1);
  44.     PlaySoundPos(wav0, SurfaceCenter(GetSenderRef()), 1, -1, -1, 0);
  45.     curframe=getcurframe(elevator);
  46.     movetoframe(elevator, 1-curframe, speed);
  47.     stop;
  48.  
  49. # ........................................................................................
  50.  
  51. arrived:
  52.     setwallcel(call0,0);
  53.     setwallcel(call1,0);
  54.     setwallcel(call2,0);
  55.     setwallcel(call3,0);
  56.     PlaySoundPos(wav0, SurfaceCenter(GetSenderRef()), 1, -1, -1, 0);
  57.     stop;        
  58.  
  59. # ........................................................................................
  60.  
  61. crossed:                        // If player crosses adjoin(s)
  62.     if (IsMoving(elevator)) return;
  63.     sleep(start_wait);                // pause before moving up
  64.  
  65.     curframe=getcurframe(elevator);
  66.     movetoframe(elevator, 1-curframe, speed);
  67.     stop;
  68.  
  69. end
  70.  
  71.